<?php
/**
 * Created by PhpStorm.
 * User: HuangLuSen
 * Date: 2017/5/5
 * Time: 14:43
 */

namespace app\admin\controller;


use think\Db;

class Position extends Admin
{
    /**
     * 职位组列表
     * @return mixed
     */
    public function index()
    {
        $position = model('position')->select();
        $this->assign('position', $position);
        return $this->fetch();
    }

    /**
     * 添加职位
     * @return mixed
     */
    public function add()
    {
        return $this->fetch('add');
    }

    /**
     *保存添加职位
     */
    public function addrun()
    {
        if (!request()->isAjax()) {
            $this->error('提交方式不正确', url('admin/position/index'));
        } else {
            $menu = new \app\admin\model\Position();
            $data = input('post.');
            $result = $menu->validate('position')->allowField(true)->save($data);
            if (false === $result) {
                // 验证失败 输出错误信息
                $this->error($menu->getError());
            } else {
                $this->success('职位添加成功', url('admin/position/index'));
            }
        }
    }

    /**
     * 编辑职位
     * @return mixed
     */
    public function edit()
    {
        input('id') ? $id = input('id') : $this->error('缺少参数');
        $info = Db::name('position')->where(['id' => $id])->find();
        $this->assign('info', $info);
        return $this->fetch();
    }

    /**
     *保存编辑职位
     */
    public function editrun()
    {
        if (!request()->isAjax()) {
            $this->error('提交方式不正确', url('admin/position/index'));
        } else {
            $menu = new \app\admin\model\Position();
            $data = input('post.');
            !empty($data['status']) ?: $data['status'] = 0;
            $result = $menu->allowField(true)->validate(true)->isUpdate(true)->save($data);
            if ($result !== false) {
                $this->success('职位修改成功', url('admin/position/index'));
            } else {
                // 验证失败 输出错误信息
                $this->error($menu->getError());
            }
        }
    }

    /**
     * 删除职位
     * @return \think\response\Json
     */
    public function del()
    {
        $id = $this->request->param('id', 0);
        if (empty($id)) {
            $this->error('请选择要操作的数据!');
        }
        if (\app\admin\model\Position::destroy($id)) {
            $arr = ['status' => 1, 'info' => '删除成功'];
        } else {
            $arr = ['status' => 0, 'info' => '删除失败'];
        }
        return json($arr);
    }
}